<?php

 
class LoginHandler {
 
        private $loginSession ="loginSession";
 
        public function IsLoggedIn() {
        	//returnerar true om vi är inloggade annars false
        	if(isset($_SESSION[$this->loginSession])==true) {
        		return true;
			}
			else {
				return false;
			}
			
		}
 
        public function DoLogin($username, $password){
        	//Returnerar true om inloggningen lyckas annars false
        	if($username && $password != null){
        		switch($username){
					case "Stina":
					if($password == "2222"){
						$_SESSION[$this->loginSession] = true;
						return true;
					}
					else return false;
					
					case "Maria":
					if($password == "4444"){
						$_SESSION[$this->loginSession] = true;
						return true;
					}
					else return false;
        		}
				
        	}
			else{
				return false;
			}
				 	
 		}
 
        public function DoLogout(){
        	unset($_SESSION[$this->loginSession]);
        }
 
        public function Test() {
               //2.sätter oss i ett utloggat tillstånd genom att anropa DoLogout
               $this->DoLogout();
			   
			   //3.Test IsLoggedIn
			   if ($this-> IsLoggedIn() == true){
			   	echo "Test 3 misslyckades";
				   return false;
			   }
               
               //4.Test DoLogin med felaktiga uppgifter
			   if ($this-> DoLogin("Patrick", "7777") == true){
			   	echo "Test 4 misslyckades";
				   return false;
			   }
			   
			   //5.Test DoLogin med rätta uppgifter
			   if ($this-> DoLogin("Stina", "2222") == false){
			   	echo "Test 5 misslyckades";
				   return false;
			   }
			   
			   //6.Kontrollerar om vi är inloggade
			   if ($this->IsLoggedIn() == false){
			   	echo "Test 6 misslyckades";
				   return false;
			   }
               
               //7. Logga ut
			   $this->DoLogout();
			   
			   //8.Test DoLogin med rätt användarnamn och fel lösenord
			   if ($this-> DoLogin("Stina", "7777") == true){
			   	echo "Test 8 misslyckades";
				   return false;
			   }
			   
			   return true;
			   
			   
        }
}